package shop.xmall.system.service;

import shop.xmall.framework.core.tree.NgTree;
import shop.xmall.system.domain.SysDept;

import java.util.List;


/**
 * 部门Service接口
 *
 * @author xmall
 * @date 2019-10-14
 */
public interface ISysDeptService {

    /**
     * 查询部门
     *
     * @param deptId 部门ID
     * @return 部门
     */
    SysDept selectSysDeptById(Long deptId);

    /**
     * 查询部门列表
     *
     * @param sysDept 部门
     * @return 部门集合
     */
    List<SysDept> selectSysDeptList(SysDept sysDept);

    /**
     * 新增部门
     *
     * @param sysDept 部门
     * @return 结果
     */
    int insertSysDept(SysDept sysDept);

    /**
     * 修改部门
     *
     * @param sysDept 部门
     * @return 结果
     */
    int updateSysDept(SysDept sysDept);

    /**
     * 批量删除部门
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    int deleteSysDeptByIds(String ids);

    /**
     * 删除部门信息
     *
     * @param deptId 部门ID
     * @return 结果
     */
    int deleteSysDeptById(Long deptId);;

    /**
     * 部门列表信息转化为ngTree结构
     * @param list
     * @return
     */
    List<NgTree<SysDept>> convertTreeToList(List<SysDept> list);
}
